Conventionally, data of various types is stored in computing devices, ranging from desktop personal computers to portable personal devices, such as multifunctional cellular telephones, personal digital assistants, etc. To make it easier and more convenient for users of computing devices to access data on the computing devices, operating systems installed on the computing devices typically provide searching capabilities. A user of a computing device may enter a search query to look for records stored on the computing device that match the search query.
To make it easier for users to search, some conventional operating system further identifies top hits among records in search result. The top hits generally include records that are commonly chosen by users at large. However, every user may have one's own preferences in searching. For instance, on one hand, two users looking for the same record (e.g., “John Smith”) may use different search queries (e.g., “Jo” and “Smith” respective). On the other hand, two users entering the same user search query (e.g., “Do”) may be looking for different records (e.g., “Donald Smith” and “John Downs” respectively). Thus, the top hits identified in the above conventional approach may not be useful for every user.